1. Technical Field
The present invention relates in general to image processing and, in particular, to efficient transmission of images in an electronic medium. Still more particularly, the present invention relates to a method, system and program product that allows large, high resolution images to be processed and transmitted more efficiently in an electronic medium.
2. Description of the Related Art
Transmission and presentation of complex (i.e., high resolution) images, including multi-page documents, via electronic media is an important function of today""s multimedia computing and Internet environments. An image, in the context of this application, is an electronic representation of a picture as an array of raster data. Image data can be generated by a computer program, or generated by electronically scanning such items as illustrations, drawings, photographs, and signatures. Regardless of the source, images may contain large amounts of data. For example, an uncompressed letter-size color image at 24 bits/pixel requires approximately 96 MB of storage. An uncompressed letter-size color image at 32 bits/pixel (such as is needed for the CMYK color space used in printing) requires approximately 128 MB of storage.
As more and more image applications continue to emerge to meet the needs of various industries, expectations with regard to performance are rising and costs are falling, thereby increasing the need for efficiencies in image processing and presentation. Due to significant improvements in processing speeds and ability of computers, which typically complete the rasterization process, processing problems have been reduced. Additionally, less expensive computer storage and memory are making the handling of larger volumes of image data increasingly more feasible. However, with the development of faster presentation devices, such as large scale digital color printers, the field of image processing has encountered problems associated with transmitting the large amounts of data required by color images in an efficient manner.
Often, particularly in the case of color data, the size of the raster image is quite large and problems are encountered when trying to deliver image data quickly to a presentation device. This problem is particularly acute if the presentation device is a high speed color printer, running at over 100 pages a minute. Even if the data format supports sophisticated layering and data compression techniques, bandwidth to the presentation device can be a problem.
High speed presentation of large, high resolution images currently requires both very high bandwidth and central processing unit (CPU) speeds. Additional bandwidth has proven to be currently either unavailable or prohibitively expensive. As a result, it is difficult to satisfy the bandwidth requirements of high speed printers or other image presentation devices.
In multi-page jobs, particularly in some market segments, such as printing marketing material and statements, there are images that repeat on many, if not all, pages. Examples include a corporate logo or perhaps a picture of an insurance agent. If the data is rasterized in the presentation device there are systems, such as IBM""s Advanced Function Printing, that allow repeating objects to be defined as resources, downloaded once to the presentation device and reused many times. Utilization of shared objects multiple pages which downloading the shared objects only once is also described with respect to text documents in U.S. Pat. No. 5,819,301.
The present invention therefore recognizes that it would be desirable to have a method, system, and program for providing efficient transmission of rasterized image data to a presentation or output device. A method, system and program that ensures that image data is transmitted in a timely manner that ensures that the presentation device always has the image data required for printing a current sheet of a multi-page presentation would be a welcomed improvement. These and other benefits are provided by the present invention.
A method, system and program for transmitting image data to a presentation device, such as a printer, is disclosed. The image data are first divided into layers. Each layer is then further divided into tiles. During the rasterization process, tiles, that are repeated within the image are defined as resources and accordingly marked for re-use. Alternatively, during implementation of the invention, each tile can be treated as a resource and downloaded once together with a unique identifier.
During the transmission of the image to the presentation device, a particular image data transmission utility is utilized to determine the most efficient manner to transmit the image tiles and present the image. With the tiles marked as resources, once the first tile has been transmitted to the presentation device, every subsequent time the tile appears within an image, the tile position and reference ID (mark) are sent, in lieu of the whole tile being sent to the device. Optionally, a transparency mask is also sent. Position and ID define which resource tile is needed and where to position it in the image, while the transparency mask is combined with any transparency mask in the stored tile and defines how the tile is merged into the image.
The preferred embodiment applies when transmitting a multi-page image having at least one repeated tile (resource). One of three processes are utilized within the image data transmission utility to determine how to efficiently provide the data to the presentation device without causing a break in the presentation output stream. In the preferred embodiments, the algorithm considers the speed of the presentation device, available transmission bandwidth, transmission speed of each tile (or relative size of each tile), and other relevant factors in determining how best to transmit the image to the presentation device.